#pragma once
#include "../BondContainer.h"

struct S_BONDLIB_EXPORT BrokerKeyInfo {
  int m_nIndex;
  int m_nBrokerId;

 public:
  BrokerKeyInfo(int brokerid, int bondindex)
      : m_nIndex(bondindex), m_nBrokerId(brokerid) {}
  BrokerKeyInfo(const BrokerKeyInfo& bki);
  BrokerKeyInfo(const BrokerKey& key);
  BrokerKeyInfo();
  BrokerKeyInfo(const char* szid, int nIndex);
  BrokerKeyInfo(const std::string& szid, int nIndex);
  BrokerKeyInfo& operator=(const BrokerKeyInfo& bki);
  unsigned int GetHash() const;
  bool operator==(const BrokerKeyInfo& key) const;
  const bool operator<(const BrokerKeyInfo& obj) const;
  void GetBrokerKey(BrokerKey& bkey) const;
};